package com.ruoyi.logs.service;

import java.util.List;
import com.ruoyi.logs.domain.AProcessLog;
import com.ruoyi.system.api.domain.SysProcessLog;
import com.ruoyi.system.api.domain.SysProcessLogDto;
import com.ruoyi.system.api.domain.SysProcessLogSelect;

/**
 * 业务流程日志Service接口
 *
 * @author ruoyi
 * @date 2025-04-02
 */
public interface IAProcessLogService
{
    /**
     * 查询业务流程日志
     *
     * @param logId 业务流程日志主键
     * @return 业务流程日志
     */
    public AProcessLog selectAProcessLogByLogId(Long logId);

    /**
     * 查询业务流程日志列表
     *
     * @param aProcessLog 业务流程日志
     * @return 业务流程日志集合
     */
    public List<AProcessLog> selectAProcessLogList(AProcessLog aProcessLog);

    /**
     * 新增业务流程日志
     *
     * @param sysProcessLog 业务流程日志
     * @return 结果
     */
    public int insertAProcessLog(SysProcessLog sysProcessLog);

    /**
     * 修改业务流程日志
     *
     * @param aProcessLog 业务流程日志
     * @return 结果
     */
    public int updateAProcessLog(AProcessLog aProcessLog);

    /**
     * 批量删除业务流程日志
     *
     * @param logIds 需要删除的业务流程日志主键集合
     * @return 结果
     */
    public int deleteAProcessLogByLogIds(Long[] logIds);

    /**
     * 删除业务流程日志信息
     *
     * @param logId 业务流程日志主键
     * @return 结果
     */
    public int deleteAProcessLogByLogId(Long logId);

    /**
     *  查询流程日志
     * @param sysProcessLogSelect 流程日志查询条件
     * @return 流程日志列表
     */
    List<SysProcessLogDto> selectProcessLog(SysProcessLogSelect sysProcessLogSelect);
}
